home *** CD-ROM | disk | FTP | other *** search
/ Merciful 2 / Merciful - Disc 2.iso / software / c / cdwritev1.3reg.lha / Install < prev    next >
Text File  |  1995-07-10  |  7KB  |  208 lines

  1. ;
  2. ;CD-Write installation script - $VER: Install_CD-Write 1.2 (10.7.95)
  3. ;Copyright © 1995 by Ralph Babel
  4. ;all rights reserved
  5. ;
  6.  
  7. (if (>= (getversion) $00250084)
  8.  (
  9.   (complete 0)
  10.   (welcome)
  11.   (set oldlevel @user-level)
  12.   (set ro-help
  13.    "Der einzugebende DOS-Gerätename legt fest, mit welchem vorhandenen Gerät CD-Write zusammenarbeiten soll. Dies ist üblicherweise der Name Ihres CD-ROM-Laufwerks, meist »CD0:« genannt. Der DOS-Gerätename muß mit einem Doppelpunkt enden.\n\n")
  14.  
  15.   (until ok
  16.    (set ro-dev
  17.     (askdir
  18.      (default "CD0:")
  19.      (prompt "Bitte geben Sie den DOS-Gerätenamen Ihres CD-ROM-Laufwerks ein:")
  20.      (help ro-help @askdir-help)
  21.      (disk)
  22.     )
  23.    )
  24.    (set tmp (getdevice ro-dev))
  25.    (set ok (<> tmp ""))
  26.    (if ok
  27.     (
  28.      (set ro-dev (cat tmp ":"))
  29.      (set ok
  30.       (askbool
  31.        (choices "Ja" "Nein")
  32.        (default 1)
  33.        (prompt "CD-Write soll also mit dem Gerät ...\n\n»" ro-dev "«\n\n... zusammenarbeiten?")
  34.        (help ro-help)
  35.       )
  36.      )
  37.     )
  38.     (
  39.      (message "Dem von Ihnen angegebenen Namen ...\n\n»" ro-dev "«\n\n... ist kein gültiger Gerätename zuordenbar.\n\nBitte prüfen Sie, ob Ihr CD-ROM-Laufwerk angemeldet ist, oder berichtigen Sie Ihre Eingabe.")
  40.      (if (= @user-level 0)
  41.       (user 1)
  42.      )
  43.     )
  44.    )
  45.   )
  46.   (user 1)
  47.   (set rw-help "Der einzugebende Verzeichnisname legt fest, in welchem Verzeichnis CD-Write die Änderungsdaten ablegen soll. Dieses Verzeichnis muß sich auf einem ständig beschreibbaren Medium befinden.\n\n")
  48.   (set ok false)
  49.   (until ok
  50.    (set rw-dir
  51.     (askdir
  52.      (default (tackon @default-dest "cdwdata"))
  53.      (prompt "Bitte legen Sie das Änderungsdatenverzeichnis für CD-Write fest:")
  54.      (help rw-help @askdir-help)
  55.      (newpath)
  56.     )
  57.    )
  58.    (set ok (exists rw-dir (noreq)))
  59.    (if ok
  60.     (
  61.      (if (not (patmatch "#?:#?" rw-dir))
  62.       (set rw-dir (expandpath rw-dir))
  63.      )
  64.      (set ok
  65.       (askbool
  66.        (choices "Ja" "Nein")
  67.        (default 1)
  68.        (prompt "CD-Write soll also seine Änderungsdaten im Verzeichnis ...\n\n»" rw-dir "«\n\n... ablegen?")
  69.        (help rw-help)
  70.       )
  71.      )
  72.     )
  73.     (message "Das von Ihnen angegebene Verzeichnis ...\n\n»" rw-dir "«\n\n... existiert nicht.\n\nBitte legen Sie es erst an, oder berichtigen Sie Ihre Eingabe.")
  74.    )
  75.   )
  76.   (user oldlevel)
  77.   (set ok false)
  78.   (until ok
  79.    (set cdw-name
  80.     (askstring
  81.      (default "CDW0")
  82.      (prompt "Unter welchem DOS-Gerätenamen soll CD-Write angemeldet werden?")
  83.      (help "Der DOS-Gerätename von CD-Write muß ohne Doppelpunkt spezifiziert werden und darf noch nicht vergeben sein.\n\n" @askstring-help)
  84.     )
  85.    )
  86.    (set ok (not (patmatch "#?:#?" cdw-name)))
  87.    (if ok
  88.     (
  89.      (exists (cat cdw-name ":") (noreq))
  90.      (set ok (= (getassign cdw-name "d") ""))
  91.      (if (not ok)
  92.       (
  93.        (message "Der DOS-Gerätename ...\n\n»" cdw-name "«\n\n... ist bereits vergeben.\n\nBitte berichtigen Sie Ihre Eingabe.")
  94.        (if (= @user-level 0)
  95.         (user 1)
  96.        )
  97.       )
  98.      )
  99.     )
  100.     (message "Der DOS-Gerätename darf keinen Doppelpunkt enthalten.\n\nBitte berichtigen Sie Ihre Eingabe.")
  101.    )
  102.   )
  103.   (user oldlevel)
  104.   (set l-dir
  105.    (askdir
  106.     (default "L:")
  107.     (prompt "In welches Verzeichnis soll das Dateisystem kopiert werden?")
  108.     (help @askdir-help)
  109.    )
  110.   )
  111.   (if (not (patmatch "#?:#?" l-dir))
  112.    (set l-dir (expandpath l-dir))
  113.   )
  114.   (set c-dir
  115.    (askdir
  116.     (default "C:")
  117.     (prompt "In welches Verzeichnis sollen die Zusatzprogramme kopiert werden?")
  118.     (help @askdir-help)
  119.    )
  120.   )
  121.   (set base-dir (pathonly @icon))
  122.   (copyfiles
  123.    (source (tackon base-dir "l/BabelCDWriteFS"))
  124.    (dest l-dir)
  125.   )
  126.   (complete 20)
  127.   (copyfiles
  128.    (prompt "Kopieren der Zusatzprogramme")
  129.    (source (tackon base-dir "c"))
  130.    (choices "BabelCDWriteCtrl" "BabelCDWriteUnDelete")
  131.    (dest c-dir)
  132.    (help "Die Zusatzprogramme ermöglichen die Steuerung bestimmter Optionen und das Wiederherstellen gelöschter Dateien. Sie sind nicht zwingend notwendig. Details hierzu entnehmen Sie bitte Ihrem Handbuch.\n\n" @copyfiles-help)
  133.    (optional)
  134.    (confirm)
  135.   )
  136.   (complete 40)
  137.   (if (< (shiftright (getversion "libs:version.library") 16) 38)
  138.    (
  139.     (set ml-file
  140.      (askfile
  141.       (default "DEVS:MountList")
  142.       (prompt "In welche MountList-Datei soll der MountList-Eintrag eingefügt werden?")
  143.       (help "Der MountList-Eintrag wird benötigt, um CD-Write automatisch anmelden zu können.\n\n" @askfile-help)
  144.      )
  145.     )
  146.     (set tmp (cat "T:MountList." cdw-name ".tmp"))
  147.     (set entry (cat "\n" cdw-name ": Handler   = " (tackon l-dir "BabelCDWriteFS") "\n      Startup   = " ro-dev "|" rw-dir "\n      StackSize = 4096\n      Priority  = 10\n      GlobVec   = -1\n      Mount     = 1\n#\n\n"))
  148.     (if (exists ml-file)
  149.      (textfile
  150.       (dest tmp)
  151.       (append entry)
  152.       (include ml-file)
  153.       (safe)
  154.      )
  155.      (textfile
  156.       (dest tmp)
  157.       (append entry)
  158.       (safe)
  159.      )
  160.     )
  161.     (copyfiles
  162.      (source tmp)
  163.      (dest (pathonly ml-file))
  164.      (newname (fileonly ml-file))
  165.      (optional "fail" "force" "askuser")
  166.     )
  167.     (delete tmp (safe))
  168.     (complete 60)
  169.     (if (= ml-file "DEVS:MountList")
  170.      (set mount-cmd (cat "Mount " cdw-name ":"))
  171.      (set mount-cmd (cat "Mount " cdw-name ": From " ml-file))
  172.     )
  173.     (startup @app-name
  174.      (command mount-cmd)
  175.      (prompt "Das folgende Kommando ...\n\n" mount-cmd "\n\n... muß in Ihre User-Startup-Datei eingefügt werden.")
  176.      (help "Dieses Kommando meldet CD-Write bei jedem Systemstart an.\n\n" @startup-help)
  177.     )
  178.    )
  179.    (
  180.     (set dd-dir
  181.      (askdir
  182.       (default "DEVS:DOSDrivers")
  183.       (prompt "In welchem Verzeichnis soll der DOSDrivers-Eintrag angelegt werden?")
  184.       (help "Geräte mit zugehörigem DOSDrivers-Eintrag werden bei jedem Systemstart automatisch angemeldet. Das Verzeichnis, in dem diese Einträge liegen, muß bereits existieren; es wird nicht automatisch angelegt.\n\n" @askdir-help)
  185.       (newpath)
  186.      )
  187.     )
  188.     (set tmp (tackon dd-dir cdw-name))
  189.     (textfile
  190.      (dest tmp)
  191.      (append cdwname "Handler   = " (tackon l-dir "BabelCDWriteFS") "\nStartup   = " ro-dev "|" rw-dir "\nStackSize = 4096\nPriority  = 10\nGlobVec   = -2\nMount     = 1\n")
  192.     )
  193.     (set mount-cmd (cat "Mount " tmp))
  194.    )
  195.   )
  196.   (complete 80)
  197.   (run mount-cmd
  198.    (prompt "Soll »" cdw-name "« bereits jetzt durch den Befehl ...\n\n»" mount-cmd "«\n\n... angemeldet werden?")
  199.    (help "Wird " cdw-name " jetzt nicht angemeldet, so wird CD-Write erst nach einem Neustart aktiv.")
  200.    (confirm)
  201.   )
  202.   (complete 100)
  203.   (set @default-dest "")
  204.   (exit "Die Installation von CD-Write ist beendet.\n\n\nViel Spaß!")
  205.  )
  206.  (abort "Installation nicht möglich.\n\nCD-Write setzt zumindest Kickstart 2.04 voraus.")
  207. )
  208.